[INFO] cloning repository https://github.com/Lymia/th_dnh_archiver
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Lymia/th_dnh_archiver" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLymia%2Fth_dnh_archiver", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLymia%2Fth_dnh_archiver'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3edf70755257e1c0f1d193304f2ce36bd8016d5a
[INFO] checking Lymia/th_dnh_archiver against master#af3c6e733a40e671550e0f0f5aeecaa13772ba56 for pr-74989
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLymia%2Fth_dnh_archiver" "/workspace/builds/worker-0/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Lymia/th_dnh_archiver on toolchain af3c6e733a40e671550e0f0f5aeecaa13772ba56
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Lymia/th_dnh_archiver
[INFO] finished tweaking git repo https://github.com/Lymia/th_dnh_archiver
[INFO] tweaked toml for git repo https://github.com/Lymia/th_dnh_archiver written to /workspace/builds/worker-0/source/Cargo.toml
[INFO] crate git repo https://github.com/Lymia/th_dnh_archiver already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f4e54b9e797840fd8387dec8a046c338ce4d316cb871aa6e4569713134a4b102
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "f4e54b9e797840fd8387dec8a046c338ce4d316cb871aa6e4569713134a4b102", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f4e54b9e797840fd8387dec8a046c338ce4d316cb871aa6e4569713134a4b102", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f4e54b9e797840fd8387dec8a046c338ce4d316cb871aa6e4569713134a4b102", kill_on_drop: false }`
[INFO] [stdout] f4e54b9e797840fd8387dec8a046c338ce4d316cb871aa6e4569713134a4b102
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] adfabfe33e3d89773a7a222f02febe6d18271ba59c759024726e8585da72587e
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "adfabfe33e3d89773a7a222f02febe6d18271ba59c759024726e8585da72587e", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Checking encoding_index_tests v0.1.4
[INFO] [stderr]    Compiling cc v1.0.15
[INFO] [stderr]    Compiling build_const v0.2.1
[INFO] [stderr]     Checking libc v0.2.40
[INFO] [stderr]     Checking adler32 v1.0.2
[INFO] [stderr]     Checking lazy_static v1.0.0
[INFO] [stderr]    Compiling synstructure v0.6.1
[INFO] [stderr]     Checking encoding-index-korean v1.20141219.5
[INFO] [stderr]     Checking encoding-index-japanese v1.20141219.5
[INFO] [stderr]     Checking encoding-index-simpchinese v1.20141219.5
[INFO] [stderr]     Checking encoding-index-tradchinese v1.20141219.5
[INFO] [stderr]     Checking encoding-index-singlebyte v1.20141219.5
[INFO] [stderr]    Compiling crc v1.8.1
[INFO] [stderr]     Checking libflate v0.1.14
[INFO] [stderr]    Compiling failure_derive v0.1.1
[INFO] [stderr]     Checking encoding v0.2.33
[INFO] [stderr]    Compiling backtrace-sys v0.1.16
[INFO] [stderr]     Checking backtrace v0.3.7
[INFO] [stderr]     Checking failure v0.1.1
[INFO] [stderr]     Checking th_dnh_archiver v3.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/output.rs:14:18
[INFO] [stdout]    |
[INFO] [stdout] 14 |             '\0' ... '\u{1F}' => new_name.push('_'),
[INFO] [stdout]    |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/output.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | /     lazy_static! {
[INFO] [stdout] 20 | |         static ref INVALID_NAMES: HashSet<&'static str> = {
[INFO] [stdout] 21 | |             let mut set = HashSet::new();
[INFO] [stdout] 22 | |             for &i in &[
[INFO] [stdout] ...  |
[INFO] [stdout] 31 | |         };
[INFO] [stdout] 32 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/output.rs:14:18
[INFO] [stdout]    |
[INFO] [stdout] 14 |             '\0' ... '\u{1F}' => new_name.push('_'),
[INFO] [stdout]    |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/output.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | /     lazy_static! {
[INFO] [stdout] 20 | |         static ref INVALID_NAMES: HashSet<&'static str> = {
[INFO] [stdout] 21 | |             let mut set = HashSet::new();
[INFO] [stdout] 22 | |             for &i in &[
[INFO] [stdout] ...  |
[INFO] [stdout] 31 | |         };
[INFO] [stdout] 32 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]   --> src/output.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 |     for char in name.trim().trim_right_matches('.').chars() {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0499]: cannot borrow `*self` as mutable more than once at a time
[INFO] [stdout]    --> src/output.rs:106:23
[INFO] [stdout]     |
[INFO] [stdout] 100 |         &mut self, original_path: &str, path_name: &mut String, original_name: &str,
[INFO] [stdout]     |         - let's call the lifetime of this reference `'1`
[INFO] [stdout] 101 |     ) -> Result<&mut OutputDirNode> {
[INFO] [stdout] 102 |         if let Some(node) = self.subdirs.get_mut(original_name) {
[INFO] [stdout]     |                             ------------ first mutable borrow occurs here
[INFO] [stdout] 103 |             Ok(node)
[INFO] [stdout]     |             -------- returning this value requires that `self.subdirs` is borrowed for `'1`
[INFO] [stdout] ...
[INFO] [stdout] 106 |             path.push(self.uniq_name(original_path, path_name.as_ref(), original_name)?);
[INFO] [stdout]     |                       ^^^^ second mutable borrow occurs here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0499]: cannot borrow `self.subdirs` as mutable more than once at a time
[INFO] [stdout]    --> src/output.rs:109:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |         &mut self, original_path: &str, path_name: &mut String, original_name: &str,
[INFO] [stdout]     |         - let's call the lifetime of this reference `'1`
[INFO] [stdout] 101 |     ) -> Result<&mut OutputDirNode> {
[INFO] [stdout] 102 |         if let Some(node) = self.subdirs.get_mut(original_name) {
[INFO] [stdout]     |                             ------------ first mutable borrow occurs here
[INFO] [stdout] 103 |             Ok(node)
[INFO] [stdout]     |             -------- returning this value requires that `self.subdirs` is borrowed for `'1`
[INFO] [stdout] ...
[INFO] [stdout] 109 |             self.subdirs.insert(original_name.to_string(), OutputDirNode::new(path));
[INFO] [stdout]     |             ^^^^^^^^^^^^ second mutable borrow occurs here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0499]: cannot borrow `self.subdirs` as mutable more than once at a time
[INFO] [stdout]    --> src/output.rs:110:16
[INFO] [stdout]     |
[INFO] [stdout] 100 |         &mut self, original_path: &str, path_name: &mut String, original_name: &str,
[INFO] [stdout]     |         - let's call the lifetime of this reference `'1`
[INFO] [stdout] 101 |     ) -> Result<&mut OutputDirNode> {
[INFO] [stdout] 102 |         if let Some(node) = self.subdirs.get_mut(original_name) {
[INFO] [stdout]     |                             ------------ first mutable borrow occurs here
[INFO] [stdout] 103 |             Ok(node)
[INFO] [stdout]     |             -------- returning this value requires that `self.subdirs` is borrowed for `'1`
[INFO] [stdout] ...
[INFO] [stdout] 110 |             Ok(self.subdirs.get_mut(original_name).unwrap())
[INFO] [stdout]     |                ^^^^^^^^^^^^ second mutable borrow occurs here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]   --> src/output.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 |     for char in name.trim().trim_right_matches('.').chars() {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors; 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0499`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `th_dnh_archiver`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0499]: cannot borrow `*self` as mutable more than once at a time
[INFO] [stdout]    --> src/output.rs:106:23
[INFO] [stdout]     |
[INFO] [stdout] 100 |         &mut self, original_path: &str, path_name: &mut String, original_name: &str,
[INFO] [stdout]     |         - let's call the lifetime of this reference `'1`
[INFO] [stdout] 101 |     ) -> Result<&mut OutputDirNode> {
[INFO] [stdout] 102 |         if let Some(node) = self.subdirs.get_mut(original_name) {
[INFO] [stdout]     |                             ------------ first mutable borrow occurs here
[INFO] [stdout] 103 |             Ok(node)
[INFO] [stdout]     |             -------- returning this value requires that `self.subdirs` is borrowed for `'1`
[INFO] [stdout] ...
[INFO] [stdout] 106 |             path.push(self.uniq_name(original_path, path_name.as_ref(), original_name)?);
[INFO] [stdout]     |                       ^^^^ second mutable borrow occurs here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0499]: cannot borrow `self.subdirs` as mutable more than once at a time
[INFO] [stdout]    --> src/output.rs:109:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |         &mut self, original_path: &str, path_name: &mut String, original_name: &str,
[INFO] [stdout]     |         - let's call the lifetime of this reference `'1`
[INFO] [stdout] 101 |     ) -> Result<&mut OutputDirNode> {
[INFO] [stdout] 102 |         if let Some(node) = self.subdirs.get_mut(original_name) {
[INFO] [stdout]     |                             ------------ first mutable borrow occurs here
[INFO] [stdout] 103 |             Ok(node)
[INFO] [stdout]     |             -------- returning this value requires that `self.subdirs` is borrowed for `'1`
[INFO] [stdout] ...
[INFO] [stdout] 109 |             self.subdirs.insert(original_name.to_string(), OutputDirNode::new(path));
[INFO] [stdout]     |             ^^^^^^^^^^^^ second mutable borrow occurs here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0499]: cannot borrow `self.subdirs` as mutable more than once at a time
[INFO] [stdout]    --> src/output.rs:110:16
[INFO] [stdout]     |
[INFO] [stdout] 100 |         &mut self, original_path: &str, path_name: &mut String, original_name: &str,
[INFO] [stdout]     |         - let's call the lifetime of this reference `'1`
[INFO] [stdout] 101 |     ) -> Result<&mut OutputDirNode> {
[INFO] [stdout] 102 |         if let Some(node) = self.subdirs.get_mut(original_name) {
[INFO] [stdout]     |                             ------------ first mutable borrow occurs here
[INFO] [stdout] 103 |             Ok(node)
[INFO] [stdout]     |             -------- returning this value requires that `self.subdirs` is borrowed for `'1`
[INFO] [stdout] ...
[INFO] [stdout] 110 |             Ok(self.subdirs.get_mut(original_name).unwrap())
[INFO] [stdout]     |                ^^^^^^^^^^^^ second mutable borrow occurs here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors; 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0499`.
[INFO] [stdout] 
[INFO] [stderr] error: build failed
[INFO] running `Command { std: "docker" "inspect" "adfabfe33e3d89773a7a222f02febe6d18271ba59c759024726e8585da72587e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "adfabfe33e3d89773a7a222f02febe6d18271ba59c759024726e8585da72587e", kill_on_drop: false }`
[INFO] [stdout] adfabfe33e3d89773a7a222f02febe6d18271ba59c759024726e8585da72587e
